#ifndef PCA_DIALOG_H
#define PCA_DIALOG_H

#include <QDialog>
#include <QLabel>
//#include <QListWidget>
//#include <QListWidgetItem>
//#include <QStackedWidget>
#include <QImage>

#include "pcaPage.h"
#include "../src/pca.h"
#include "image.h"
#include <vector>



class PCADialog : public QDialog{
    Q_OBJECT

    public:
        PCADialog(QWidget *, std::vector<QImage *>, std::vector<QString>);
        ~PCADialog();

    signals:
        void done(QImage *);
        void done();
        void cancel();

    public slots:
        void changeImage();
        void apply();
        void notApply();

    private:
        void update();

        std::vector<QImage *> originalImages;
        QImage *testImage;

        Image *preview;
        PCAPage *page;
        PCA *pca;
};

#endif
